#define  _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
//int main()
//{
//	int m, n;
//	printf("Enter m,n;");
//	scanf("%d%d", &m, &n);
//	while (m != n) //1
//	{
//		while (m > n) m = m - n; //2
//		while (n > m) n = n - m; //3
//	}
//	printf("m=%d\n", m);
//	return 0;
//}




//	char c;
//	int v0 = 0, v1 = 0, v2 = 0;
//		do
//		{
//			switch (c = getchar())
//			{
//			case'a':case'A':
//			case'e':case'E':
//			case'i':case'I':
//			case'o':case'O':
//			case'u':case'U':v1 += 1;
//			default:v0 += 1; v2 += 1;
//			}
//		} while (c != '\n');
//		printf("v0=%d,v1=%d,v2=%d\n", v0, v1, v2);
//		return 0;
//}


#include <stdio.h>
#include<string.h>

int main() {
    int n = 0;
    scanf("%d", &n);
    char arr[100] = { 0 };
    int i = 0; int j = 1;
    int dx, xx, sz;
    for (int h = 0; h < n; h++)
    {
        dx = sz = xx = 0;
        scanf("%s", arr);
        if (strlen(arr) < 8)
        {
            printf("NO\n");
            continue;
        }
        if (arr[0] >= '0' && arr[0] <= 9)
        {
            printf("NO\n"); continue;
        }
        for (i = 1; arr[i] != '\0'; i++)
        {

            if (arr[i] >= '1' && arr[i] <= '9' || arr[i] >= 'A' && arr[i] <= 'Z' || arr[i] >= 'a' && arr[i] <= 'z')
                j = 1;
            else
            {
                printf("NO\n");
                goto A;
            }
            if (arr[i] >= '0' && arr[i] <= '9')
                sz++;
            else if (arr[i] >= 'A' && arr[i] <= 'Z')
                dx++;
            else  if (arr[i] >= 'a' && arr[i] <= 'z')
                xx++;
        }
        if (sz == 0 || dx == 0 || xx == 0)
        {
            printf("NO\n"); continue;
        }
    A:continue;
        printf("YES\n");
    }


    return 0;
}